<?php
/**
 * Генератор
 * 
 * Класс  содержит служебные функции, связанные с различной генерацией (в частности с генерацией паролей)
 * 
 * @author Дмитрий Кузьма <kouzma.d@gmail.com>
 * @version 1.0
 */
class Service_String {
  
  
  public function __construct() {//Конструктор
  }

  public static function strlenUnicode($str) {
    return strlen(iconv("UTF-8", "WINDOWS-1251", $str));
  }
  
  /**
   * Обрезает строку по последему пробелу и дописывает многоточие
   *
   * @return string
   */
  public static function cutString($str, $charAmount) {
    $str = iconv("UTF-8", "WINDOWS-1251", $str);
    if(strlen($str) > $charAmount) {
      $str = substr($str, 0, $charAmount+1);
      do {
        $sym = substr($str, -1, 1);
        $str = substr($str, 0, strlen($str)-1);
      } while ($sym != ' ' && strlen($str) > 10);
      $str .= '...';
    }
    $str = iconv("WINDOWS-1251", "UTF-8", $str);
    return $str;
  }

}
?>